1. Field of the Invention
The present invention relates generally to a routing processing method in a packet transmission and a system therefore. More particularly, the invention relates to a routing processing method in a packet transmission and a system therefore, for performing delay control of a packet in an internet telephone communication in a Transmission Control Protocol/Internet Protocol (TCP/IP) network.
2. Description of the Related Art
Conventionally, a router disposed in the CP/IP network of this type (such as intranet, intemet, extranet, hereinafter only referred to intemet) retrieves a routing table from a destination address to read out a data transmission path to a transmission destination for transmitting a packet to the read out transmission path. In this case, packet transmission cannot be carried out until completion of routing retrieval. Therefore, a transmission period of the packet is significantly variable depending upon a retrieval period of the routing table.
In the recent internet performing packet transmission, a best effort type service is typical. The best effort type service is a service to do the best effort for accomplishing a processing considering the entire network but does not guarantee end-to-end service. Therefore, in the worst case, service cannot be provided. The recent internet is apt to exceed traffic in the existing wired and radio telephone services. As a result, even in the intemet which has provided the best effort type service conventionally, a service quality (Qos: quality of service) comparable with the conventional type communication network is require to be realized.
In such TCP/IP communication network, guarantee for delay of packet transmission is becoming important. Particularly, in the case of transmission telephonic speech (talk signal) in a form of a packet, clarity of telephonic conversation can be degraded to make delay unacceptable if end-to-end delay becomes in excess of about 100 msec. Accordingly, it becomes necessary to restrict the delay of packet transmission in the TCP/IP communication network to be a predetermined value or less. In such TCP/IP communication network, one of the important causer of packet transmission delay is the routing process in the router. Accordingly, when a processing amount in the routing process in the router is large (upon a high load condition) and when the routing process cannot be performed at high speed, it becomes impossible to restrict the delay to be less than or equal to the predetermined value.
Various proposals have been made for the routing process of this kind. For example, in Japanese Unexamined Patent Publication No. Heisei 4-183044, for xe2x80x9cRouting Control System with Modification of Transmission Source Dataxe2x80x9d, correction of a user data of a transmitted PUD (Protocol Unit Data) can be corrected only by transmitting a user data modification PUD within a transmission holding period when correction becomes necessary after transmission of PUD containing the large amount user data by a transmission source end system or when the correction amount is small.
On the other hand, in Japanese Unexamined Patent Publication No. Heisei 6-244867, for xe2x80x9cBack-up Route Connection Stand-by Routing Systemxe2x80x9d, connection of a backup path is conditioned upon the occurrence of a failure in a junction line. In this method, real-time routing depending upon the condition of the back-up path is enabled, and in conjunction therewith, traffic and node load in the network can be reduced. Furthermore, by restricting increase of the number of junction stages, the possibility of abandonment or dropping of packets can be reduced. In addition, by preventing the back-up path from unnecessarily opening, the communication period can be reduced to reduce wasting of communication cost.
As set forth above, in the prior art, delay in packet transmission due to the routing process in the router is caused in the communication network. If the amount of routing process in the router is large for high load and thus the routing process cannot be executed at high speed, it becomes impossible to restrict the delay for internet telephone communication to be less than or equal to the allowable predetermined value.
The present invention has been worked out in view of the problem in the prior art as set forth above. It is therefore an object of the present invention to provide a routing process in a packet transmission and a system therefor, which does not effect abandonment of packet for an application not given importance for a delay value to restrict delay in the routing process adapting to the application for enabling reduction of process period required for routing process.
In order to accomplish the above-mentioned object, according to the first aspect of the present invention, a routing processing method in a packet transmission for an input packet as an object for routing, comprises the steps of:
performing a process for identifying an application adapting for transmission of an input packet;
performing a process for setting a timer value preliminary provided for the identified application:
performing a process for routing to determine a port of transmission destination on the basis of a destination address stored in a routing table; and
performing a process for abandoning a packet or transferring the packet to a predetermined route adapting the identified application when routing process cannot be completed exceeding the set timer value.
According to the second aspect of the present invention, a packet transmission routing processing system performing a routing process for an input packet as a routing object, comprises:
parsing and timer processing means for identifying an application corresponding to transmission of an input packet and monitoring a timer value preliminary provided for the application; and
routing and transferring means for determining a port of a transmission destination on the basis of a destination address stored in a routing table and disposing the packet or transferring the packet to a preliminary determined route adapting to the identified application when routing process is continued beyond the timer value monitored by the parsing and timer processing means.
In the preferred construction, the parsing and timer processing means and the routing and transferring processing means may comprise:
a packet accumulating portion accumulating the input packet;
a packet parsing portion performing parsing for identifying the application corresponding to the packet from the packet accumulating portion and reading out of a destination address;
a packet waiting portion waiting the packet from the packet parsing portion and transmitting the packet in response to a packet output command;
packet transferring portion for transferring the packet output from the packet waiting portion to a packet output port on the basis of a transmission destination designation and next process designation;
a timer value determining portion outputting a timer value and a next process code corresponding to the application identified by the packet parsing portion;
a monitoring timer portion outputting a time out signal upon termination of measurement of the timer value from the timer value determining portion; and
a routing retrieving portion outputting a packet output designation signal to the packet waiting portion and outputting a transfer path number and a process code to the packet transferring portion when the routing process based on the destination address from the timer value parsing portion or a time out signal is input from the monitoring timer portion.
The timer value may be a timer for executing a predetermined process when routing retrieval is not completed within a period designated by the timer value, and
the next processing code may be a code designating the process of packet to be object for the routing process when retrieving process in the routing retrieving portion is not completed within the period designated by the timer value.
The predetermined process in the timer value may be to terminate the routing process irrespective of normal or abnormal of the result of process within the period designated by the routing retrieval period of the timer value, and the process of the packet in the next process code may be abandonment of the packet or transferring to a predetermined path when the transmission destination cannot be determined.
In the monitoring timer portion, a counter may be employed, the counter outputs a time out signal generated by measuring the timer value from the timer value determining portion to the routing retrieving portion.
The timer value determining portion may comprise:
an application judgment portion for generating an address at a value the same as an application identification number from the packet parsing portion or a value derived by multiplying or dividing the application identification number by an integer; and
a random access memory reading out the preliminary stored timer value and the next process code for outputting to the monitoring timer and the routing retrieving portion corresponding to the address from the application judgment portion.
The timer value determining portion comprises:
a content-addressable memory storing the application identification number, the timer value and the next process code in combination, the content-addressable memory outputs the timer value and the next process code stored therein on the basis of the input application identification number. The random access memory or the content accessable memory may be a detachable and rewritable storage element. The packet transmission may further include input operation and storage processing means for rewriting the timer value in the random access memory or the content addressable memory. In the alternative, the packet transmission routing processing system may further include an external storage data modifying device connected to the random access memory or the content-addressable memory for rewriting the timer value. In the further alternative, the packet transmission routing processing system may further include an external storage data modifying and communicating device receiving a designation data from a communication network for modifying the timer value of the random access memory or content-addressable memory.
The routing retrieving portion may comprise a processing unit including a microprocessor or a digital signal processor executing a sequence for outputting a packet output command signal to the packet waiting signal, and outputting a transfer path number and the process code to the packet transferring portion when the routing process based on the destination address from the packet paring portion is completed or after input of the time out signal from the monitoring timer.
The application identified by the parsing and timer processing means may be at least an internet telephone protocol in a TCP/IP communication network. The timer value may be a period for obtaining clarity of telephone conversation in a TCP/IP communication network. The period to obtain clarity in the telephone conversation may be in a range of 10 msec. to 50 msec.
As set forth above, the routing processing method in the packet transmission and the system therefor sets the preliminary provided timer value for the application identified by the input packet to determine the port of the transmission destination on the basis of the destination address stored in the routing table. In this case, when the routing process cannot be completed even after elapsing of the set timer value, the packet is abandoned or transferred to the predetermined route depending upon the identified application.
As a result, it becomes possible to restrict the period required for routing process in the packet transfer to be the predetermined value or less. In this case, for the application which does not give importance for the delay value, the packet is not abandoned. As such, delay in the routing process is restricted per application.
Accordingly, for the application, for which small delay is required and abandonment ratio of packet to less important, the timer value is set at small value to restrict the relay value at smaller value. As a result, the process period required for routing process can be reduced.
For example, in the internet telephone, for voice transmission in real-time, preferred end-to-end delay period is less than or equal to 100 msec. If delay becomes longer than the preferred delay period, satisfactory clarity of telephonic conversation cannot be obtained and such delay is unacceptable. It has been established that, in case of telephone voice, the end-to-end delay less than or equal to 100 msec. is established rough standard. In case of the Internet telephone, it is possible that call connection is established through several hops of the routers. A delay per hop is 50 msec. or less in case of two hops, and 20 msec. or less in case of five hops. Accordingly, it becomes meaningless to transfer the packet for which a delay in excess of 100 msec. is caused. Therefore, such packet is abandoned. Namely, by setting the timer value of routing process of the packet of the internet telephone to be about 10 msec. to 50 msec. in which satisfactory clarity of telephone conversation can be obtained, for example, packet requiring process period in excess of the set period can be abandoned.
On the other hand, the packet transmission routing processing system according to the present invention rewrites the timer value corresponding to the delay value employing the detachable and rewritable storage element, input operation and storage processing means external storage data modifying device or the external storage data modifying and communicating device.
As a result, it becomes possible to set the timer value adapting to each application. Particularly, adapting to modification of the transmission standard of the TCP/IP communication network or establishing condition, modification of the period to obtain satisfactory clarity in telephonic conversation is facilitated. On the other hand, freedom of the device construction (design) can be improved.